Workbook এবং Worksheet Events ব্যবহার করে আপনি Excel এর বিভিন্ন কার্যক্রমের উপর নজর রাখতে এবং সেগুলি অনুযায়ী স্বয়ংক্রিয়ভাবে কোড চালাতে পারেন। এই ইভেন্টগুলি এমন কার্যক্রম বা পরিবর্তনগুলির জন্য ট্রিগার হয় যা এক্সেল ফাইলের মধ্যে ঘটে, যেমন: ফাইল খোলা (Open), ফাইল বন্ধ করা (Close), শীট সক্রিয় করা (Activate), ইত্যাদি। VBA ব্যবহার করে আপনি এসব ইভেন্টের জন্য স্বয়ংক্রিয় কোড সেট করতে পারেন, যা নির্দিষ্ট সময়ে স্বয়ংক্রিয়ভাবে কার্যকরী হবে।
Workbook Events
Workbook Events হল এমন ইভেন্টগুলি যা পুরো Workbook এর ওপর কার্যকর হয়। এগুলো সাধারণত Workbook এর অবস্থান বা অবস্থায় পরিবর্তন হলে ট্রিগার হয়, যেমন Workbook খোলা, বন্ধ করা বা সংরক্ষণ করা ইত্যাদি।
১. Workbook Open Event
এই ইভেন্টটি তখন ট্রিগার হয় যখন একটি Workbook খোলা হয়। এটি ব্যবহার করে আপনি ফাইল ওপেন করার সময় কোনো নির্দিষ্ট কোড চালাতে পারেন।
কোড উদাহরণ:
Private Sub Workbook_Open()
MsgBox "Welcome to the Workbook!"
End Sub
এই কোডটি Workbook খোলার সময় একটি স্বাগত বার্তা প্রদর্শন করবে।
২. Workbook Close Event
এই ইভেন্টটি তখন ট্রিগার হয় যখন একটি Workbook বন্ধ করা হয়। আপনি এই ইভেন্টের মাধ্যমে ফাইল বন্ধ করার আগে কিছু কাজ করতে পারেন, যেমন সংরক্ষণ চেক করা বা সতর্কীকরণ বার্তা প্রদর্শন করা।
কোড উদাহরণ:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim response As Integer
response = MsgBox("Do you want to save changes?", vbYesNoCancel)
If response = vbYes Then
ThisWorkbook.Save
ElseIf response = vbNo Then
ThisWorkbook.Saved = True
Else
Cancel = True
End If
End Sub
এটি ফাইল বন্ধ করার আগে একটি পপ-আপ বার্তা দেখাবে এবং ইউজারকে পরিবর্তনগুলি সেভ করতে, না করতে বা বন্ধের প্রক্রিয়া বাতিল করতে বলবে।
৩. Workbook Activate Event
এই ইভেন্টটি তখন ট্রিগার হয় যখন Workbook সক্রিয় হয় (অর্থাৎ, যখন এটি নির্বাচন করা হয় এবং এটি অন্য কোনো উইন্ডো থেকে সামনে চলে আসে)।
কোড উদাহরণ:
Private Sub Workbook_Activate()
MsgBox "You have activated this workbook."
End Sub
এই কোডটি Workbook সক্রিয় হলে একটি বার্তা প্রদর্শন করবে।
৪. Workbook Deactivate Event
এই ইভেন্টটি তখন ট্রিগার হয় যখন Workbook এর ফোকাস অন্য কোনো Workbook বা অ্যাপ্লিকেশন এ চলে যায়। আপনি এই ইভেন্ট ব্যবহার করে কর্মপদ্ধতি শেষ করার আগে কিছু কাজ করতে পারেন।
কোড উদাহরণ:
Private Sub Workbook_Deactivate()
MsgBox "You have deactivated this workbook."
End Sub
এটি Workbook এর ফোকাস অন্য কোথাও চলে গেলে একটি বার্তা দেখাবে।
Worksheet Events
Worksheet Events হল এমন ইভেন্টগুলি যা নির্দিষ্ট Worksheet এর ওপর কার্যকর হয়। এগুলি তখন ট্রিগার হয় যখন শীটে কোনো পরিবর্তন ঘটে, যেমন শীট একটিভেট হওয়া, সেল নির্বাচন হওয়া, অথবা কোনো ডেটা পরিবর্তন হওয়া।
১. Worksheet Activate Event
এই ইভেন্টটি তখন ট্রিগার হয় যখন একটি Worksheet সক্রিয় হয় (অর্থাৎ, শীটটি নির্বাচিত হয় এবং অন্য শীট থেকে ফোকাস চলে আসে)।
কোড উদাহরণ:
Private Sub Worksheet_Activate()
MsgBox "You have activated this worksheet."
End Sub
এটি শীটটি একটিভ হলে একটি বার্তা দেখাবে।
২. Worksheet Deactivate Event
এই ইভেন্টটি তখন ট্রিগার হয় যখন একটি Worksheet এর ফোকাস অন্য Worksheet-এ চলে যায়।
কোড উদাহরণ:
Private Sub Worksheet_Deactivate()
MsgBox "You have deactivated this worksheet."
End Sub
এটি শীটটি ডিসঅ্যাকটিভ হলে একটি বার্তা দেখাবে।
৩. Worksheet Change Event
এই ইভেন্টটি তখন ট্রিগার হয় যখন শীটের কোনো সেলে পরিবর্তন করা হয়। এটি সেলগুলির ডেটা পরিবর্তন বা নতুন ডেটা এন্ট্রি করার পর কার্যকরী হয়।
কোড উদাহরণ:
Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox "Cell " & Target.Address & " has been changed."
End Sub
এটি সেল পরিবর্তন হওয়ার সাথে সাথে সেলটির ঠিকানা সহ একটি বার্তা প্রদর্শন করবে।
৪. Worksheet Calculate Event
এই ইভেন্টটি তখন ট্রিগার হয় যখন Worksheet এ কোনো গণনা (calculation) হয়। এটি সাধারণত তখন ঘটে যখন কোনো ফর্মুলা রিফ্রেশ বা পুনরায় হিসাব করা হয়।
কোড উদাহরণ:
Private Sub Worksheet_Calculate()
MsgBox "Worksheet calculation is complete."
End Sub
এটি শীটের গণনা শেষ হলে একটি বার্তা দেখাবে।
৫. Worksheet Selection Change Event
এই ইভেন্টটি তখন ট্রিগার হয় যখন শীটে কোনো সেল নির্বাচন পরিবর্তন হয়।
কোড উদাহরণ:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
MsgBox "You selected " & Target.Address
End Sub
এটি যখনই সেল নির্বাচন পরিবর্তন হবে, তখন সেলটির ঠিকানা সহ একটি বার্তা দেখাবে।
Workbook এবং Worksheet Event ব্যবহার করার সুবিধা
১. স্বয়ংক্রিয় কাজ
Workbook এবং Worksheet Events ব্যবহার করে আপনি বিভিন্ন কার্যক্রম স্বয়ংক্রিয়ভাবে চালাতে পারেন। যেমন, ফাইল খোলার পর স্বাগত বার্তা, সেল পরিবর্তন হলে গণনা শুরু, শীট পরিবর্তন হলে বিশেষ নির্দেশনা ইত্যাদি।
২. কাস্টমাইজড আচরণ
আপনার প্রয়োজন অনুযায়ী Excel এর আচরণ কাস্টমাইজ করতে পারেন। উদাহরণস্বরূপ, ফাইল বন্ধ করার আগে কোনো চেক পরিচালনা করা, বা শীট পরিবর্তন হলে কিছু নির্দিষ্ট কাজ করা।
৩. ডেটা সুরক্ষা এবং চেকিং
Worksheet Change ইভেন্ট ব্যবহার করে আপনি সেলে ভুল বা অবাঞ্ছিত ডেটা এন্ট্রি হওয়া রোধ করতে পারেন। যেমন, নির্দিষ্ট পরিসরে মান রাখার জন্য সতর্কীকরণ বার্তা প্রদর্শন করা।
৪. ইউজার ফ্রেন্ডলি
এই ইভেন্টগুলো ব্যবহার করে আপনি ইউজারদের জন্য আরও ইন্টারঅ্যাকটিভ এবং ইউজার-ফ্রেন্ডলি এক্সেল ফাইল তৈরি করতে পারেন। এগুলো তাদের কাজের গতি বাড়াতে এবং কাজের কার্যকারিতা নিশ্চিত করতে সহায়তা করে।
সারাংশ
Workbook এবং Worksheet Events এক্সেল ম্যাক্রো ব্যবহারের মাধ্যমে বিভিন্ন কার্যক্রম এবং পরিবর্তনকে স্বয়ংক্রিয়ভাবে ট্র্যাক এবং নিয়ন্ত্রণ করা সম্ভব। এগুলো ব্যবহার করে আপনি এক্সেল ফাইলের কার্যকলাপ আরও কাস্টমাইজড, কার্যকর এবং দক্ষ করতে পারেন। এই ইভেন্টগুলির মাধ্যমে আপনি ডেটা ইনপুট, শীট পরিচালনা, ফাইল সেভ বা বন্ধ ইত্যাদি কাজে আরও সঠিক এবং স্বয়ংক্রিয় প্রক্রিয়া তৈরি করতে পারবেন।
Read more